<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<span>事件对象</span>
		<div>事件处理函数的一个标准特性是，以某些方式访问的事件对象包含有关于当前事件的上下文信息
		事件处理三部分组成：对象.事件处理函数 =函数。例如：单击文档任意处。
		document.onclick = function(){
			alert();
		}
		click 表示一个事件类型  onclick表示事件处理函数或绑定对象的属性
		document表示一个绑定的对象，用于触发某个元素区域。
		function()匿名函数是被执行的函数用于触发后执行。
		
		除了用匿名函数的方法作为被执行的函数也可以设置成独立的函数。
		document.onclick = box;//
		function box(){
			alert();
		}
		this 关键字和上下文
		：在一个对象里，由于作用域的关系this代表着离他最近的对象。
	
	当触发某个事件时会产生一个事件对象，事件对象一般称为event对象
	这个对象是浏览器通过函数把这个对象作为参数传递过来的。
		</div>
	</body>
<script>
	/*function box(a,b){
		alert(arguments.length);//获取参数个数  ,2普通函数没有event 
	}
	box('s',2);
	document.onclick =function(){
		alert(arguments.length);//如果是事件处理函数绑定的函数，浏览器会默认传递一个参数，这个参数就是event对象
		alert(arguments[0]);//[object MouseEvent] 鼠标事件对象
	}
	document.onkeydown =function(event){
		alert(event);//[object KeyboardEvent]
	}
	
	//兼容ie浏览器
	
	document.onclick =function(event){
		var e = event||window.event;
		alert(e);
	}*/
	
	//鼠标事件 
	document.onmouseup = function(eve){
	/*	var e =eve ||window.event;
		alert(e.button);//鼠标左键0，中间1右键2（非ie）*/
		
		if(getButton(eve)==0)alert('左键');
		if(getButton(eve)==1)alert('点击了滚轮');
		if(getButton(eve)==2)alert('右键');
	}
	
	//ps:window.event ie属性但是火狐谷歌都支持
	//兼容ie
	function getButton(eve){
		var e = eve||window.event;
		if(eve){
			return e.button;
		}else if(window.event){
			switch(e.button){
				case 1:   //ie左键为1
				return 0;
				case 4:
				return 1;
				case 2:
				return 2;
				case 0:    //兼容360（可能按键冲突）
				return 2;
			}
		}
		
	}
	
	//可视区域及屏幕坐标
	 document.onclick =function(eve){
	 	var e =eve ||window.event;
	 	alert(e.clientX+','+e.clientY);//距离左上角的距离（可视区域）
	 	
	 	alert(e.clientX+document.documentElement.scrollTop+','+e.clientY);//距离实际浏览器页面的距离（当有滚动条时）
	 	//注意谷歌浏览器要是用 document.body.scrollTop
	 	
	     alert(e.screenX+','+e.screenY);//距离电脑屏幕左上角的距离
	     
	     alert(getKey(eve));
	 }
	
	
	//修改键 
	function getKey(eve){
		var e = eve||window.event;
		var keys =[];
		if(e.shiftKey) keys.push('使用了shirt键');
		if(e.ctrlKey) keys.push('使用了ctrl');
		if(e.altKey) keys.push('alt');    //注意 单击+alt和360快捷键冲突 
		return  keys;
	}
	
</script>
</html>
